Interrupt 21h Function 71A7h Minor Code 1h 

Converts MS-DOS date and time values to 64-bit file time.

mov ax, 71A7h         ; date and time format conversion

mov bl, 1             ; Dos Time To File Time

mov bh, MilliSeconds  ; see below

mov cx, DOSTime       ; see below

mov dx, DOSDate       ; see below

mov di, seg lpft      ; see below

mov es, di

mov di, offset lpft

int 21h

 

jc  error

 

Parameters

MilliSeconds

Number of 10 millisecond intervals in 2 seconds to add to the MS-DOS time. The number can be a value in the range 0 to 199.

DOSTime

MS-DOS time to convert. The time is a packed 16-bit value with the following form:

 

Bits

Contents

0-4

Second divided by 2

5-10

Minute (0-59)

11-15

Hour (0-23 on a 24-hour clock)

 

DOSDate

MS-DOS date to convert. The date is a packed 16-bit value with the following form:

 

Bits

Contents

0-4

Day of the month (1-31)

5-8

Month (1 = January, 2 = February, and so on)

9-15

Year offset from 1980 (that is, add 1980 to get the actual year)

 

lpft

Address of a FILETIMEA44M8H structure to receive the converted 64-bit file time.

 

Return Value

Clears the carry flag and returns the 64-bit file time in the specified structure if successful. Otherwise, the function sets the carry flag and sets the AX register to an error value.

Remarks

The time in FILETIME must be Coordinated Universal Time (UTC). The MS-DOS time is local time.